import dts from 'vite-plugin-dts'
const path = require('path')
const { defineConfig } = require('vite')

module.exports = defineConfig({
  resolve: {
    alias: {
      "@": path.resolve(__dirname, "lib"),
    },
  },
  plugins: [dts({
    outputDir: path.join(__dirname, './types'),
    insertTypesEntry: true,
    // 设置是否在发出类型文件后将其打包
    // 基于 `@microsoft/api-extractor`，由于这开启了一个新的进程，将会消耗一些时间
    // 默认值: false
    rollupTypes: true,
    copyDtsFiles: false
  })],
  build: {
    lib: {
      entry: path.resolve(__dirname, 'lib/main.ts'),
      name: 'EastcomIntegratedMachineJssdk',
      fileName: (format) => `eastcom-integrated-machine-jssdk.${format}.js`
    },
    rollupOptions: {
      // 确保外部化处理那些你不想打包进库的依赖
      // external: ['vue'],
      // output: {
      //   // 在 UMD 构建模式下为这些外部化的依赖提供一个全局变量
      //   globals: {
      //     vue: 'Vue'
      //   }
      // }
    }
  }
})